# -*- coding: utf-8 -*-

from odoo import models, fields, api, _
from odoo.exceptions import UserError


class CpqBomCompareWizard(models.TransientModel):
    """BOM版本对比向导"""
    _name = 'cpq.bom.compare.wizard'
    _description = 'BOM版本对比'

    old_bom_id = fields.Many2one(
        'cpq.bom',
        string='旧版本',
        required=True
    )
    new_bom_id = fields.Many2one(
        'cpq.bom',
        string='新版本',
        required=True
    )
    
    def action_compare(self):
        """执行对比"""
        self.ensure_one()
        
        if self.old_bom_id == self.new_bom_id:
            raise UserError(_('不能对比相同的版本'))
        
        # TODO: 实现对比逻辑
        # 1. 比较两个版本的BOM行
        # 2. 标记新增/修改/删除
        # 3. 高亮显示差异
        
        return {
            'type': 'ir.actions.client',
            'tag': 'display_notification',
            'params': {
                'title': _('对比功能'),
                'message': _('BOM版本对比功能正在开发中...'),
                'type': 'warning',
                'sticky': False,
            }
        }
